Data centers increasingly rely on virtualization to deliver services to customers. A typical data center may include clusters of densely packed computing servers, called nodes, with each node potentially executing many virtual machines. Typically, each node includes a hypervisor or other virtualization framework, and the entire data center includes one or more datacenter managers that manage instantiation of virtual machines on the particular compute nodes. Virtual machines may be transferred, or “migrated,” between nodes by transferring the complete state of the virtual machine from a source node to the destination node. Virtual machine migration may be performed “live,” that is, without interrupting the state of the virtual machine and with minimal disruption to services provided. However, typical virtualized data centers may not provide time-critical or high-availability guarantees for virtual machine migration. Thus, virtual machine migration typically causes some amount of downtime when the virtual machine is unavailable, and that downtime may vary depending on virtual machine size, virtual machine load, network traffic, and other factors that may be unpredictable.
Telecommunication network functions are increasingly being consolidated into network data centers. For example, cellular base station functions that have historically been distributed among many cell towers may now be consolidated into a virtualized network data center. However, telecommunication networks typically have extremely high reliability requirements. Accordingly, typical live migration of virtual machines may have difficulty consistently achieving the reliability requirements for telecommunication network functions.